home *** CD-ROM | disk | FTP | other *** search
- //-----------------------------------------------------------------------------
- // Torque Game Engine
- // Copyright (C) GarageGames.com, Inc.
- //-----------------------------------------------------------------------------
-
- //-----------------------------------------------------------------------------
- // Load up defaults console values.
-
- exec("./defaults.cs");
-
- //-----------------------------------------------------------------------------
-
- function initCommon()
- {
- // All mods need the random seed set
- setRandomSeed();
-
- // Very basic functions used by everyone
- exec("./client/canvas.cs");
- exec("./client/audio.cs");
- }
-
- function initBaseClient()
- {
- // Base client functionality
- exec("./client/message.cs");
- exec("./client/mission.cs");
- exec("./client/missionDownload.cs");
- exec("./client/actionMap.cs");
-
- // There are also a number of support scripts loaded by the canvas
- // when it's first initialized. Check out client/canvas.cs
- }
-
- function initBaseServer()
- {
- // Base server functionality
- exec("./server/audio.cs");
- exec("./server/server.cs");
- exec("./server/message.cs");
- exec("./server/commands.cs");
- exec("./server/missionInfo.cs");
- exec("./server/missionLoad.cs");
- exec("./server/missionDownload.cs");
- exec("./server/clientConnection.cs");
- exec("./server/kickban.cs");
- exec("./server/game.cs");
- }
-
-
- //-----------------------------------------------------------------------------
- package Common {
-
- function displayHelp() {
- Parent::displayHelp();
- error(
- "Common Mod options:\n"@
- " -fullscreen Starts game in full screen mode\n"@
- " -windowed Starts game in windowed mode\n"@
- " -autoVideo Auto detect video, but prefers OpenGL\n"@
- " -openGL Force OpenGL acceleration\n"@
- " -directX Force DirectX acceleration\n"@
- " -voodoo2 Force Voodoo2 acceleration\n"@
- " -noSound Starts game without sound\n"@
- " -prefs <configFile> Exec the config file\n"
- );
- }
-
- function parseArgs()
- {
- Parent::parseArgs();
-
- // Arguments override defaults...
- for (%i = 1; %i < $Game::argc ; %i++)
- {
- %arg = $Game::argv[%i];
- %nextArg = $Game::argv[%i+1];
- %hasNextArg = $Game::argc - %i > 1;
-
- switch$ (%arg)
- {
- //--------------------
- case "-fullscreen":
- $pref::Video::fullScreen = 1;
- $argUsed[%i]++;
-
- //--------------------
- case "-windowed":
- $pref::Video::fullScreen = 0;
- $argUsed[%i]++;
-
- //--------------------
- case "-noSound":
- error("no support yet");
- $argUsed[%i]++;
-
- //--------------------
- case "-openGL":
- $pref::Video::displayDevice = "OpenGL";
- $argUsed[%i]++;
-
- //--------------------
- case "-directX":
- $pref::Video::displayDevice = "D3D";
- $argUsed[%i]++;
-
- //--------------------
- case "-voodoo2":
- $pref::Video::displayDevice = "Voodoo2";
- $argUsed[%i]++;
-
- //--------------------
- case "-autoVideo":
- $pref::Video::displayDevice = "";
- $argUsed[%i]++;
-
- //--------------------
- case "-prefs":
- $argUsed[%i]++;
- if (%hasNextArg) {
- exec(%nextArg, true, true);
- $argUsed[%i+1]++;
- %i++;
- }
- else
- error("Error: Missing Command Line argument. Usage: -prefs <path/script.cs>");
- }
- }
- }
-
- function onStart()
- {
- Parent::onStart();
- echo("\n--------- Initializing MOD: Common ---------");
- initCommon();
- }
-
- function onExit()
- {
- echo("Exporting client prefs");
- export("$pref::*", "./client/prefs.cs", False);
-
- echo("Exporting server prefs");
- export("$Pref::Server::*", "./server/prefs.cs", False);
- BanList::Export("./server/banlist.cs");
-
- OpenALShutdown();
- Parent::onExit();
- }
-
- }; // Common package
- activatePackage(Common);
-
-
-
-
-
- function generateRandomChunkery(%parent)
- {
- $chunkTestLevel--;
- %count = getRandom(100);
-
- for(%i=0; %i<%count; %i++)
- {
- $chunkCreateCount++;
-
-
- %obj = new TextChunk()
- {
- textData = "level= " @ $chunkTestLevel @ ", idx = " @ %i @ $buff;
- };
-
- if($chunkTestLevel > 0)
- generateRandomChunkery(%obj);
-
- %parent.add(%obj);
-
- // If we're hitting our limit, stop making stuff.
- if($chunkCreateCount > $chunkMaxCount)
- break;
- }
-
- $chunkTestLevel++;
- }
-
- function generateBigChunkTest(%buffSize, %chunkCount)
- {
- $chunkStartTime = getRealTime();
-
- $chunkTestLevel = 10;
- $chunkCreateCount = 0;
- $chunkMaxCount = %chunkcount; // At most 16 megs of data.
-
- $a = getRealTime();
- $buff = "";
- while(strlen($buff) < %buffSize)
- $buff = $buff @ "klmadskldasjkadlkjsakjlsdjksldakjlkjdlaakjlsdkljaslkjslkjdaslkjd";
- $b = getRealTime();
-
- $root = new TextChunk() { textData = "ROOT"; };
-
- $c = getRealTime();
- generateRandomChunkery($root);
- $d = getRealTime();
-
- echo("Created " @ $chunkCreateCount @ " chunks in " @ $chunkTestLevel @ " levels.");
-
- %file = "common/bigchunktest.chunk";
- echo("Saving to '" @ %file @ "'...");
- $e = getRealTime();
- saveChunkFile($root, %file);
- $f = getRealTime();
- echo("Done.");
-
- echo("Deleting object hierarchy...");
- $root.delete();
- echo("Done.");
-
- echo("Loading object hierarchy from '"@%file@"'...");
- $g = getRealTime();
- $newRoot = loadChunkFile(%file);
- $h = getRealTime();
- echo("Done.");
-
- echo("chunkCount = " @ $chunkCreateCount @ ", chunkSize=" @ %buffSize);
- echo("Generated data = " @ ($chunkCreateCount * %buffSize));
- echo("Elapsed time = " @ ((getRealTime() - $chunkStartTime)/1000) @ " sec.");
- echo("Buffer init = " @ (($b-$a)/1000) @ " sec.");
- echo("chunk gen = " @ (($d-$c)/1000) @ " sec.");
- echo("save time = " @ (($f-$e)/1000) @ " sec.");
- echo("load time = " @ (($h-$g)/1000) @ " sec.");
-
- return $newRoot;
- }
-
- function testchunk()
- {
- %foo =
- new TextChunk()
- {
- textData = "pony";
-
- new TextChunk()
- {
- textData = "child1";
-
- new TextChunk()
- {
- textData = "childQ";
- };
- };
-
- new TextChunk()
- {
- textData = "child2";
- };
- new TextChunk()
- {
- textData = "child3";
-
- new TextChunk()
- {
- textData = "childA";
- };
-
- new TextChunk()
- {
- textData = "childB";
- };
-
- new TextChunk()
- {
- textData = "childC";
- };
-
- new TextChunk()
- {
- textData = "childD";
- };
-
- new TextChunk()
- {
- textData = "childE";
- };
- };
- };
-
- saveChunkFile(%foo, "starter.fps/test.chunk");
-
- %foo.delete();
-
- $foo = loadChunkFile("starter.fps/test.chunk");
-
-
- }
-